
Czar: main.cpp Card.o Deck.o Logic.o Player.o Table.o Client.o display.o Slot.o
	g++ main.cpp Card.o Deck.o Logic.o Player.o Table.o Client.o display.o Slot.o -lncursesw -o Czar
Card.o: Card.cpp Card.h
	g++ -c Card.cpp
Deck.o: Deck.cpp Deck.h Card.o
	g++ -c Deck.cpp
Logic.o: Logic.cpp Logic.h Deck.o
	g++ -c Logic.cpp
Player.o: Player.cpp Player.h
	g++ -c Player.cpp
Table.o: Table.cpp Table.h
	g++ -c Table.cpp
Slot.o: Slot.cpp Slot.h
	g++ -c Slot.cpp
card_test: tests/card_test.cpp Card.o
	g++ tests/card_test.cpp Card.o -o card_test
deck_test:tests/deck_test.cpp Deck.o Card.o
	g++ tests/deck_test.cpp Deck.o Card.o -o deck_test
logic_test:tests/table_test.cpp Logic.o Deck.o Card.o Table.o Player.o
	g++ tests/logic_test.cpp Logic.o Deck.o Card.o Table.o Player.o -o logic_test
table_test:tests/table_test.cpp Table.o Player.o Deck.o Card.o
	g++ tests/table_test.cpp Table.o Player.o Card.o Deck.o -o table_test

logic_test_Esther:tests/logic_test_Esther.cpp Card.o Logic.o Table.o Deck.o Player.o
	g++ tests/logic_test_Esther.cpp Card.o Logic.o Table.o Deck.o Player.o -o logic_test_Esther


clean:
	-rm Card.o
	-rm Deck.o
	-rm Logic.o
	-rm Player.o
	-rm Table.o
	-rm Client.o
	-rm display.o
	-rm Slot.o
	-rm card_test
	-rm deck_test
	-rm logic_test
	-rm table_test
	-rm Czar
	-rm main.o
	-rm logic_test_Esther
